home *** CD-ROM | disk | FTP | other *** search
-
- /********************************************
- **** Core Class V1.1 © 1993-94 Yves Schmid & Alia Development
- ****
- **** CoreCmd.h
- ****
- **** Authors: Yves Schmid and Odorico von Susani
- **** Created: 14 November 1993
- **** Modified: 23 July 1994
- **** Description: CoreCmd.h contains all definitions of the Core message system.
- ****
- **** When you send a message to an object you can specify a
- **** command, an information, flags, and a heritage level.
- ****
- **** • Command: The command is a value you define. This value will
- **** be read by the objects which receive the message.
- **** The Core system already defines some commands.
- **** To be sure that future release of the Core system will not interfere with
- **** your definitions you must define values which stars at 1000.
- ****
- **** • Information: The information is a simple void pointer. You can
- **** put what you want here.
- ****
- **** • Flags: The flags allow you to choose where your message will go. You
- **** can force your message to follow a linked list or an object tree...
- ****
- **** • Heritage level: You may only want the objects which have
- **** a defined heritage level to receive your message. The Core system
- **** only checks this value if you set the "CCF_CHECKLEVEL" flag.
- ****
- ****
- ****
- ****
- *************************/
-
-
- #ifndef CoreCmd_H
- #define CoreCmd_H
-
-
- #define CCMD_NULL 0 // Null command
- #define CCMD_ERROR 1 // An error occurs
- #define CCMD_CONNECTIONDELETED 2 // A connection will be deleted
- #define CCMD_WATCHERDELETED 3 // A connection watcher will be deleted
- #define CCMD_CLRALREADYPASSED 4 // (Private)
-
-
- //............................................
- // Flags for "docmd"
-
- // ° For all objects:
-
- #define CCF_CHECKLEVEL (1<<0) // Send only to a defined level.
-
-
- // ° For CoreNode and CoreList:
-
- #define CCF_NODES (1<<1) // Send to nodes which have the same linked list level.
- #define CCF_NODELOCK (1<<2) // (Private)
- #define CCF_NODEINTERN (1<<3) // (Private)
-
- // ° For CoreHead:
-
- #define CCF_ASCENDANT (1<<5) // Send to ascendant objects of this CoreHead.
- #define CCF_DESCENDANT (1<<6) // Send to descendant objects of this CoreHead.
- #define CCF_CONNECTION (1<<7) // Send to his connections
- #define CCF_WATCHER (1<<8) // Send to his watchers
- #define CCF_MUSTDESCEND (1<<9) // (Private)
- #define CCF_ALLASCEND (1<<10) // (Private)
-
-
- // Send everywhere
- // (Note that each object receives the message only once)
-
- #define CCF_EVERYWHERE (CCF_CONNECTION|CCF_WATCHER|CCF_ASCENDANT|CCF_DESCENDANT)
-
- // Everywhere without connections
- // (Note that each object receives the message only once)
-
- #define CCF_EVERYWHERE_TREE (CCF_ASCENDANT|CCF_DESCENDANT|CCF_NODEINTERN|CCF_MUSTDESCEND|CCF_ALLASCEND)
-
-
- #endif
-
-